import { forwardRef, Module } from '@nestjs/common'
// import { JwtModule } from '@nestjs/jwt'
import { TypeOrmModule } from '@nestjs/typeorm'
import { UserEntity } from './entities/user.entity'
import { UserService } from './user.service'
import { TokenService } from '@/src/auth/token.service'
import { AuthModule } from '../auth/auth.module'
import { OrderEntity } from '../order/entities/order.entity'
import { CommentEntity } from '../comment/entities/comment.entity'
import { FavoriteEntity } from '../favorite/entities/favorite.entity'
import { UserCheckinEntity } from './entities/user-checkin.entity'
import { PointsModule } from '../points/points.module'
import { VerificationModule } from '../verification/verification.module'
import { CaptchaService } from '../auth/captcha.service'

@Module({
  imports: [
    TypeOrmModule.forFeature([UserEntity, OrderEntity, CommentEntity, FavoriteEntity, UserCheckinEntity]),
    AuthModule,
    forwardRef(() => PointsModule),
    VerificationModule,
  ],
  providers: [UserService, TokenService, CaptchaService],
  exports: [UserService, TokenService, TypeOrmModule.forFeature([UserEntity])]
})
export class UserModule { }